.borderTop(@size, @color) {
  &::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    border-top: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }
}

.border1px(@size, @color) {
  &::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    border: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }
}

.borderBottom(@size, @color) {
  &::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    border-top: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }
}

.borderRight(@size, @color) {
  &::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    height: 100%;
    left: 0;
    right: 0;
    border-right: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }
}

.verticalBorder(@size, @color) {
  &::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    border-top: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }

  &::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    border-top: @size solid @color;
    @media screen and (-webkit-min-device-pixel-ratio: 3) {
      transform: scaleY(0.33333);
    }
    @media screen and (-webkit-min-device-pixel-ratio: 2) {
      transform: scaleY(0.5);
    }
  }
}

.setTopLine(@c: #C7C7C7) {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  border-top: 1px solid @c;
  color: @c;
  transform-origin: 0 0;
  transform: scaleY(0.5);
}

.setBottomLine(@c: #C7C7C7) {
  content: " ";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  border-bottom: 1px solid @c;
  color: @c;
  transform-origin: 0 100%;
  transform: scaleY(0.5);
}

.setLeftLine(@c: #C7C7C7) {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-left: 1px solid @c;
  color: @c;
  transform-origin: 0 0;
  transform: scaleX(0.5);
}

.setRightLine(@c: #C7C7C7) {
  content: " ";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  bottom: 0;
  border-right: 1px solid @c;
  color: @c;
  transform-origin: 100% 0;
  transform: scaleX(0.5);
}

.setLine(@c: #C7C7C7) {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 200%;
  height: 1px;
  border: 1px solid @c;
  color: @c;
  height: 200%;
  transform-origin: left top;
  transform: scale(0.5);
}